home *** CD-ROM | disk | FTP | other *** search
Wrap
VERSION 5.00 Object = "{7311C353-D095-11D2-9E7C-0060B0A4C27E}#24.0#0"; "M_MDIP~1.OCX" Begin VB.MDIForm FMain BackColor = &H8000000C& Caption = "MDI Sample" ClientHeight = 6780 ClientLeft = 165 ClientTop = 735 ClientWidth = 9555 Icon = "MDIForm.frx":0000 LinkTopic = "MDIForm1" StartUpPosition = 3 'Windows Default Begin M_mdiParent32.mdiParent mdiParent Left = 1500 Top = 2220 _ExtentX = 503 _ExtentY = 476 Enabled = -1 'True End Begin VB.Menu mnuNew Caption = "&New" Begin VB.Menu mnuWindowNewWindowDLL1 Caption = "New Window from DLL &1" End Begin VB.Menu mnuWindowNewWindowDLL2 Caption = "New Window from DLL &2" End Begin VB.Menu mnuWindowBar0 Caption = "-" End Begin VB.Menu mnuNonChildModal Caption = "&Non Child Modal" End Begin VB.Menu mnuNonChild Caption = "&Non Child" End End Begin VB.Menu mnuWindow Caption = "&Window" Begin VB.Menu mnuNext Caption = "&Next" End Begin VB.Menu mnuPrevious Caption = "&Previous" End Begin VB.Menu mnuWindowBar2 Caption = "-" End Begin VB.Menu mnuWindowCascade Caption = "&Cascade" End Begin VB.Menu mnuWindowTileHorizontal Caption = "Tile &Horizontal" End Begin VB.Menu mnuWindowTileVertical Caption = "Tile &Vertical" End Begin VB.Menu mnuWindowArrangeIcons Caption = "&Arrange Icons" End Begin VB.Menu mnuWindowBar3 Caption = "-" End Begin VB.Menu mnuMaximizeAll Caption = "&Maximize All" End Begin VB.Menu mnuMinimizeAll Caption = "M&inimize All" End Begin VB.Menu mnuRestore Caption = "&Restore All" End Begin VB.Menu mnuWindowBar4 Caption = "-" End Begin VB.Menu mnuHideAll Caption = "&Hide All" End Begin VB.Menu mnuUnhideAll Caption = "&Unhide All" End End Begin VB.Menu mnuWindowList Caption = "Window &List" Begin VB.Menu mnuMRU Caption = "< None >" Index = 0 End Begin VB.Menu mnuMRU Caption = "" Index = 1 Visible = 0 'False End Begin VB.Menu mnuMRU Caption = "" Index = 2 Visible = 0 'False End Begin VB.Menu mnuMRU Caption = "" Index = 3 Visible = 0 'False End Begin VB.Menu mnuMRU Caption = "" Index = 4 Visible = 0 'False End Begin VB.Menu mnuMRU Caption = "" Index = 5 Visible = 0 'False End End Begin VB.Menu mnuAbout Caption = "&About" End Attribute VB_Name = "FMain" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Option Explicit Private mcMDIChild1() As cMDIChild1 Private mcMDIChild2() As cMDIChild2 Private mv_a() As Variant Private Sub MDIForm_Load() Left = GetSetting(App.Title, "Settings", "MainLeft", 1000) Top = GetSetting(App.Title, "Settings", "MainTop", 1000) Width = GetSetting(App.Title, "Settings", "MainWidth", 6500) Height = GetSetting(App.Title, "Settings", "MainHeight", 6500) WindowState = GetSetting(App.Title, "Settings", "WindowState", vbNormal) HookWindow hwnd End Sub Private Sub MDIForm_Unload(Cancel As Integer) If Not WindowState = vbMinimized Then SaveSetting App.Title, "Settings", "WindowState", WindowState If Not WindowState = vbMaximized Then SaveSetting App.Title, "Settings", "MainLeft", Left SaveSetting App.Title, "Settings", "MainTop", Top SaveSetting App.Title, "Settings", "MainWidth", Width SaveSetting App.Title, "Settings", "MainHeight", Height End If End If End Sub Private Sub mdiParent_ChildrenData(ByVal Index As Integer, ByVal hwnd As Long, ByVal Caption As String, ByVal UserSpecID As String, ByVal Visible As Boolean, AbortEnum As Boolean) mv_a(Index, 1) = Index mv_a(Index, 2) = hwnd mv_a(Index, 3) = Caption mv_a(Index, 4) = UserSpecID mv_a(Index, 5) = Visible End Sub Private Sub mnuAbout_Click() mdiParent.About End Sub Public Sub BuildMenu() If mdiParent.NoOfChildren > 0 Then ReDim mv_a(1 To mdiParent.NoOfChildren, 1 To 5) As Variant mdiParent.GetChildrenData Dim str$, I% For I = 1 To UBound(mv_a) str = mv_a(I, 1) & Space(2) & _ mv_a(I, 2) & Space(2) & _ mv_a(I, 3) & Space(2) & _ mv_a(I, 4) & Space(2) If I < 6 Then If I = 1 Then mnuMRU(I - 1).Checked = True mnuMRU(I - 1).Caption = mv_a(I, 3) & " , Visible = " & CBool(mv_a(I, 5)) mnuMRU(I - 1).Visible = True mnuMRU(I - 1).Tag = mv_a(I, 2) End If Next I Else For I = 1 To 5 mnuMRU(I).Visible = False Next I End If End Sub Private Sub mnuHideAll_Click() mdiParent.Hide End Sub Private Sub mnuMaximizeAll_Click() mdiParent.Maximize End Sub Private Sub mnuMinimizeAll_Click() mdiParent.Minimize End Sub Private Sub mnuMRU_Click(Index As Integer) mdiParent.Activate , mnuMRU(Index).Tag End Sub Private Sub mnuNext_Click() mdiParent.ActivateNext End Sub Private Sub mnuNonChild_Click() Static X% Dim frm As New FNonChild X = X + 1 Load frm frm.Caption = "Non Child No. " & X frm.Show End Sub Private Sub mnuNonChildModal_Click() Dim frm As New FNonChild Load frm frm.Caption = "Modal Form" frm.Show vbModal, Me End Sub Private Sub mnuPrevious_Click() mdiParent.ActivatePrevious End Sub Private Sub mnuRestore_Click() mdiParent.Restore End Sub Private Sub mnuUnhideAll_Click() mdiParent.UnHide End Sub Private Sub mnuWindowNewWindowDLL1_Click() Static J J = J + 1 ReDim Preserve mcMDIChild1(1 To J) As cMDIChild1 Set mcMDIChild1(J) = New cMDIChild1 mcMDIChild1(J).Show hwnd, "MDIChild 1 DLL, Child No." & J End Sub Private Sub mnuWindowNewWindowDLL2_Click() Static J J = J + 1 ReDim Preserve mcMDIChild2(1 To J) As cMDIChild2 Set mcMDIChild2(J) = New cMDIChild2 mcMDIChild2(J).Show hwnd, "MDIChild 2 DLL, Child No." & J End Sub Private Sub mnuWindowArrangeIcons_Click() mdiParent.Arrange mdiArrangeIcons End Sub Private Sub mnuWindowTileVertical_Click() mdiParent.Arrange mdiTileVertical End Sub Private Sub mnuWindowTileHorizontal_Click() mdiParent.Arrange mdiTileHorizontal End Sub Private Sub mnuWindowCascade_Click() mdiParent.Arrange mdiCascade End Sub